EN FR
EN FR


Section: Software and Platforms

Abella

Participants : Kaustuv Chaudhuri [correspondant] , Matteo Cimini, Dale Miller, Olivier Savary-Bélanger, Yuting Wang.

Main web-site: http://abella-prover.org .

Abella is an interactive theorem prover based on the two-level logic approach. It consists of a sophisticated reasoning logic that supports induction, co-induction, and generic reasoning, and a specification logic that is based on logic programming. Abella was initially designed to reason about simple second-order Lambda Prolog programs, which is sufficient for the computational specifications.

During 2013, as part of the RAPT Associated Team, Chaudhuri and Yuting Wang (former intern from Univ. Minnesota) released version 2.0 of Abella, a culmination of nearly two years of work and a significant improvement in its expressivity. Specifically,

  • The Abella specification logic now supports the full higher-order hereditary Harrop logic of λProlog. This logic allows for very natural specifications of higher-order relations, and leads to cleaner and simpler proofs.

  • The Abella reasoning logic was extended with support for arbitrary dynamic contexts and incremental backchaining. The design is based on fundamental insights from focusing, a core strength of the team.

  • A number of illustrative examples of the use of higher-order reasoning were added to the Abella examples library, including a novel new characterization of marked β-reduction in the λ-calculus in terms of a simple higher-order inductive definition of λ-paths.

  • These results were published in PPDP 2013 [26] .

Abella continues to evolve as part of RAPT. In 2013, we hosted an intern from McGill University, Olivier Savary-Bélanger (supervised by Chaudhuri), who investigated extensions of Abella with regular context schemas. Among his contributions:

  • Abella's reasoning level has been augmented with a plugin system that both extends the syntax of Abella theories and adds new tactics.

  • The main plugin for context schemas allows definitions of regular contexts and context relations, with entirely automatic proofs of the main administrative lemmas.

  • Experimentally, this extension can be used to eliminate up to 40% of the proof text, including nearly 100% of the administrative lemmas on contexts, from typical examples from the meta-theory of the λ-calculus.

We expect this extension to become part of the 2.1 release of Abella, scheduled for later in 2014.

One important application of Abella emerged in 2013: the formalization of bisimulation-up-to techniques for process calculi such as CCS and the π-calculus. Chaudhuri, Cimini, and Miller have formulated the correctness proof of a number of prominent up-to-techniques using the co-inductive and higher-order facilities of Abella. This work indicates an important emerging direction for Abella: modular reasoning.

In terms of development, we have welcomed Savary-Bélanger into the development team, and added a number of collaborators into the management team for the Abella web-site.